home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / What's New? / Development Kits / ColorSync™ 2.0.1 GM / Interfaces / PInterfaces / CMAcceleration.p next >
Encoding:
Text File  |  1995-12-12  |  4.6 KB  |  158 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        CMAcceleration.p
  3.  
  4.      Contains:    ColorSync 2.0 Acceleration Component Interfaces
  5.  
  6.      Version:    Technology:    ColorSync 2.0
  7.                  Release:    2.0f3
  8.  
  9.      Copyright:    © 1984-1994 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, send the file and version
  13.                  information (from above) and the problem description to:
  14.  
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. }
  19.  
  20. {$IFC UNDEFINED UsingIncludes}
  21. {$SETC UsingIncludes := 0}
  22. {$ENDC}
  23.  
  24. {$IFC NOT UsingIncludes}
  25.  UNIT CMAcceleration;
  26.  INTERFACE
  27. {$ENDC}
  28.  
  29. {$IFC UNDEFINED __CMACCELERATION__}
  30. {$SETC __CMACCELERATION__ := 1}
  31.  
  32. {$I+}
  33. {$SETC CMAccelerationIncludes := UsingIncludes}
  34. {$SETC UsingIncludes := 1}
  35.  
  36.  
  37. {$IFC UNDEFINED __MEMORY__}
  38. {$I Memory.p}
  39. {$ENDC}
  40. {    Types.p                                                        }
  41. {        ConditionalMacros.p                                        }
  42. {    MixedMode.p                                                    }
  43.  
  44. {$IFC UNDEFINED __COMPONENTS__}
  45. {$I Components.p}
  46. {$ENDC}
  47.  
  48. {$IFC UNDEFINED __CMAPPLICATION__}
  49. {$I CMApplication.p}
  50. {$ENDC}
  51. {    Quickdraw.p                                                    }
  52. {        QuickdrawText.p                                            }
  53. {            ScriptLayout.p                                        }
  54. {    Files.p                                                        }
  55. {        OSUtils.p                                                }
  56. {        Finder.p                                                }
  57. {    Printing.p                                                    }
  58. {        Errors.p                                                }
  59. {        Dialogs.p                                                }
  60. {            Windows.p                                            }
  61. {                Events.p                                        }
  62. {                Controls.p                                        }
  63. {                    Collections.p                                }
  64. {                    Appearance.p                                }
  65. {                    TextObjects.p                                }
  66. {                        Unicode.p                                }
  67. {                    Menus.p                                        }
  68. {                AppleEvents.p                                    }
  69. {                    EPPC.p                                        }
  70. {                        AppleTalk.p                                }
  71. {                        PPCToolbox.p                            }
  72. {                        Processes.p                                }
  73. {                    Notification.p                                }
  74. {                        Kernel.p                                }
  75. {                            MachineExceptions.p                    }
  76. {                            Timing.p                            }
  77. {                Drag.p                                            }
  78. {                    TextEdit.p                                    }
  79. {    CMICCProfile.p                                                }
  80.  
  81. {$PUSH}
  82. {$ALIGN MAC68K}
  83. {$LibExport+}
  84.  
  85. CONST
  86.     cmAccelerationInterfaceVersion = 1;
  87.  
  88. {–––––––––––––––––––––––––––––––––––––– Component Type}
  89.     cmAccelerationComponentType    = 'csac';
  90.  
  91. {–––––––––––––––––––––––––––––––––––––– Required Component function selectors}
  92.     cmLoadTables                = 0;
  93.     cmCalculateData                = 1;
  94.  
  95. {–––––––––––––––––––––––––––––––––––––– table data for acceleration component}
  96.  
  97. TYPE
  98.     CMAccelerationTableData = RECORD
  99.         inputLutEntryCount:        LONGINT;                                { count of entries for input lut for one dimension}
  100.         inputLutWordSize:        LONGINT;                                { count of bits of each entry ( e.g. 16 for WORD )}
  101.         inputLut:                Handle;                                    { handle to input lut}
  102.         outputLutEntryCount:    LONGINT;                                { count of entries for output lut for one dimension    }
  103.         outputLutWordSize:        LONGINT;                                { count of bits of each entry ( e.g. 8 for BYTE )}
  104.         outputLut:                Handle;                                    { handle to output lut}
  105.         colorLutInDim:            LONGINT;                                { input dimension  ( e.g. 3 for LAB ; 4 for CMYK )}
  106.         colorLutOutDim:            LONGINT;                                { output dimension ( e.g. 3 for LAB ; 4 for CMYK )}
  107.         colorLutGridPoints:        LONGINT;                                { count of gridpoints for color lut ( for one Dimension )    }
  108.         colorLutWordSize:        LONGINT;                                { count of bits of each entry ( e.g. 8 for BYTE )}
  109.         colorLut:                Handle;                                    { handle to color lut}
  110.         inputColorSpace:        CMBitmapColorSpace;                        { packing info for input}
  111.         outputColorSpace:        CMBitmapColorSpace;                        { packing info for output}
  112.         userData:                Ptr;
  113.         reserved1:                LONGINT;
  114.         reserved2:                LONGINT;
  115.         reserved3:                LONGINT;
  116.         reserved4:                LONGINT;
  117.         reserved5:                LONGINT;
  118.     END;
  119.  
  120.     CMAccelerationTableDataPtr = ^CMAccelerationTableData;
  121.     CMAccelerationTableDataHdl = ^CMAccelerationTableDataPtr;
  122.  
  123. {–––––––––––––––––––––––––––––––––––––– calc data for acceleration component}
  124.     CMAccelerationCalcData = RECORD
  125.         pixelCount:                LONGINT;                                { count of input pixels}
  126.         inputData:                Ptr;                                    { input array}
  127.         outputData:                Ptr;                                    { output array}
  128.         reserved1:                LONGINT;
  129.         reserved2:                LONGINT;
  130.     END;
  131.  
  132.     CMAccelerationCalcDataPtr = ^CMAccelerationCalcData;
  133.     CMAccelerationCalcDataHdl = ^CMAccelerationCalcDataPtr;
  134.  
  135. {————————————————————————————————————————————————————————————————————————————————————————————————}
  136. {                A c c e l e r a t i o n   C o m p o n e n t   I n t e r f a c e s}
  137. {————————————————————————————————————————————————————————————————————————————————————————————————}
  138.  
  139. FUNCTION CMAccelerationLoadTables(CMSession: ComponentInstance; tableData: CMAccelerationTableDataPtr): CMError;
  140.     {$IFC NOT GENERATINGCFM}
  141.     INLINE $2F3C, $0004, $0000, $7000, $A82A;
  142.     {$ENDC}
  143. FUNCTION CMAccelerationCalculateData(CMSession: ComponentInstance; calcData: CMAccelerationCalcDataPtr): CMError;
  144.     {$IFC NOT GENERATINGCFM}
  145.     INLINE $2F3C, $0004, $0001, $7000, $A82A;
  146.     {$ENDC}
  147.  
  148. {$ALIGN RESET}
  149. {$POP}
  150.  
  151. {$SETC UsingIncludes := CMAccelerationIncludes}
  152.  
  153. {$ENDC} {__CMACCELERATION__}
  154.  
  155. {$IFC NOT UsingIncludes}
  156.  END.
  157. {$ENDC}
  158.